Integrity - Website Link Checker
Thank you for using Integrity. Feed it your home page address (url) and Integrity will follow all of your internal links to find your pages, checking the server response code for all internal and external links found. 
Please visit http://peacockmedia.co.uk for information, support and updates.

Many thanks,
Shiela
shiela@peacockmedia.co.uk

None of our shareware, freeware, demo or registered applications collect information from your computer or make unauthorised internet connections. As with most software Integrity comes with no warranty of any kind. PeacockMedia or Shiela Dixon will not be held responsible or liable for any loss or damage which is considered to be a result of using the software.  Running the software implies acceptance of these terms.

Version History
Version 2.2
released July 2008
Server response time is logged. This is the time taken between Integrity sending the request and receiving the first response. This may not reflect the actual server response time if Integrity is running a large number of threads, or if the internet connection is busy
When Integrity has finished running, a 'flat' view is available, that can be sorted by any of the columns
Global preferences and current config are now combined into one tabbed window
Standard customisable toolbar added and main window rearranged. Stop is now renamed 'Pause'
Version 2.1
released June 2008
Crawls local files (drag the file into the 'starting URL' box)
Version 2.0
released June 2008
Architecture / Logic changed. This fixes thread-safety issues (ie v1.x crashing on faster machines when using larger number of threads). Architecture change also makes v2 faster. 
Now handles sites built using frames.
Max number of threads increased. This was limited in version 1.6.6 as a quick-fix to thread-safety issues. Max number of threads (when slider is in 'more' position) is now 29, was 7. ('Threads' are no longer really separate threads owned by Integrity, but simultaneous asynchronous requests.)

Version 1.6.11
released May 2008
Fixes bug which was causing some links to be skipped on certain pages. Integrity's parser was getting confused sometimes by javascript on pages containing 'less than' and 'greater than' operators. 
Other small fixes and efficiencies.

Version 1.6.10
released April 2008
Progress indicators added to export functions. 
Link info window now shows all occurrences of a link alongside the link text for each occurrence.

Version 1.6.9
released April 2008
Fixes bug related to trimming which randomly prevented complete crawling of whole site.
Revised handling of incorrectly nested quotes - now correctly allows for apostrophes as part of url ( "/pdf/Educators'_Guide" ).
Help menu now links to support pages of peacockmedia.co.uk, 'Donate' menu option added.

Version 1.6.8
released April 2008
Routines for trimming whitespace, querystring etc rewritten in pure C improving efficiency. 
Better handling of incorrectly nested single/double quotes ( href = "http://..' )
Now correctly handles base href's which don't give a sceme (assumes http://)
Better trimming of whitespace, ie carriage returns and other control characters in unexpected places in the middle of <a ..> tags
Shows how many times a link occurs, not just how many pages it appears on (ie it may appear multiple times on same page).

Version 1.6.7
released March 2008
Fixes bug which prevented links being found on a page if the end of a comment and an 'end script' tag were adjacent to each other ( --></script> ) 

Version 1.6.6
released March 2008
sends user-agent string in header - default is "integrity/1.6" but this can be changed (see Preferences) if your site needs integrity to appear to be a recognised browser. 
bug fixed which caused crash if current config was viewed after integrity had run, showing all links, and go button was pressed.
no longer logs links as they are created.
export function is now available when crawl is in progress.
Thread safety improved. Number of threads limited by using slider rather than text field.
Stop and Continue appear under File menu.
'whitelists' and 'blacklists' from the config are case-sensitive once more as this had a serious overhead.

Version 1.6.5
released October  2007
'whitelists' and 'blacklists' from the config are no longer case-sensitive
 some problems with mcms zref fixed. zrefs are now shown when good links are hidden.
 links which are not checked because they are in the blacklist, are treated as good links. They are hidden when good links are hidden and are given no colour label.
 "Hide good links" button has now become "Show bad links only". This subtle change means that links which have not been checked will not show. 
 Small fixes and efficiencies.
 
Version 1.6.4
released October  2007 
Fixes problem with tab-delimited file export
Both tab-delimited and comma-separated exports are 'flat', ie each 'on page url' has its own row
Fixes crashes or problems caused by carriage returns or whitespace present within a quoted href (yes, some html has really unexpected features)
Ignores Javascript (anything between <script> tags)
More object retention fixes and small efficiencies

Version 1.6.2
released September  2007 
'on page url' will now recognise 'http://peacockmedia.co.uk'  and 'http://peacockmedia.co.uk/' as the same link. Therefore a broken links may more correctly be reported on a lower number of pages and the whole application is a little more efficient.
Recognises and reports 'zref' links, a difficult-to-find link inserted by Microsoft Content Management Server
other small efficiencies and fixes.

Version 1.6.1
released July  2007 
Some classes given less generic names to help to prevent clashes with other applications.
Some possible exceptions anticipated and avoided.

Version 1.6
released July  2007 
Adds user-definable colour labels (see Preferences). A 'good link' is defined as server response code 2xx, redirected links include any 3xx code, a bad link is a 4xx code, and an 'error' is a 5xx server code or any other error. 
Menu item added View > Info for Current Item (command-I), shows link inspector pallette (previously only available via double-click in the main table).
Fixes bug causing crash if no internet connection.

Version 1.5
released 28 May  2007 
Supports base href.
Can export tab-delimited text file. 
Adds 'Only follow links containing...' field.
Fixes bug allowing some 'commented out' urls to be tested.
Fixes bug preventing inspector window opening when some links double-clicked.
Preferences window added: allows choice of displaying 'on page' as url or page title.
Improved HTML export - link urls are presented as links.
Config Starting URL drop-down list behaviour improved .

Version 1.4.2
released May  2007 
No longer parses error (eg 404) pages.
Now handles spaces in URLs (as long as correctly contained in single or double quotes).

Version 1.4
released April 22 2007
Fixes a problem in some earlier versions which prevented all links being found on some pages
HTML character entities in links are now 'un-encoded' (eg '&amp;' is replaced with '&') before link is checked.
If link appears on more than one page, main table now shows actual number of pages rather than "multiple"
Re-Check Bad Links feature added (under File menu)
Fixes problem with export to CSV for some sites.
NB. early copies of 1.4 gave the version as 1.3.1 in the 'About' box

Version 1.3.1
released April 7 2007
Fixes problem with the 'don't check URLs containing' feature which didn't work properly in v1.3
Fixes problem which caused some links to be missed
Small improvement to the stop button

Version 1.3
released April 6 2007
'This page only' checkbox added.
Status display more accurately shows number of links done. 
Programme flow, thread safety and object retention improvements. Cures an instability which seemed to be related to websites which have large collections of external links and/or setting a larger number of threads.
Fixes bug preventing some link text from being recorded properly.
For some file types which may be larger files (pdf, mpg, mp3, jpg) the parser no longer sends an http request to check the 'Content-Type', speeding up the crawl time.

Version 1.2
released March 29 2007
Now tolerant to excessively long hrefs (previously hrefs over 1000 characters would break an internal limit and cause the application to crash).
Timeout can now be set in the config window. Using a very large number of threads can obviously make timeouts more likely and so the timeout figure can now be increased accordingly.
The link inspector window now shows the 'on page' list in a form which is clickable. A double-click will open the page in question.
The HTML report now shows the 'on page' column as links to the page in question.

Version 1.1
released March 26 2007
Link text shows up for more links - link text is still only held once regardless of how many instances of that link are found on the site, but if a link has no text (eg image link), then that will not overwrite the existing link text.
Ignores javascript links as well as mailto links.
Fixes bug caused by a return within the <a > tag.
Fixes bug which could prevent all links being found on certain pages.

Version 1.0
released March 25 2007
First non-beta release

Version 0.5 (Beta)
released March 22 2007
corrected problem which allowed cached data to be checked - new data is now requested every time.
Fixes bug which could prevent some links being found if javascript present in page.

Version 0.4 (Beta)
released March 21 2007
Bug fixed which prevented some relative URLs from being formed correctly
Displays better information about any redirected urls. The final status code shown is the status for the final (redirected to) URL
Link text included as column in main table
Change to programme flow and a number of small refinements and efficiency improvements meaning that the application remains responsive throughout larger crawls.
Bug fixed which prevented some configs saving properly
No longer checks links which are inside comments (<!-- -->)

Version 0.3 (Beta)
released March 7 2007
Improved interface, added 'Continue' button, allows Integrity to be paused and re-started.
Exporting - results can be exported as HTML, CSV or plain text.

Version 0.2 (Beta)
released March 1 2007
Fixes bug which prevented Integrity from recognising links in uppercase - ie <A HREF= ...

Version 0.1 (Beta)
released Feb 2007